package com.wanxi.dao;

import com.wanxi.model.ProductModel;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class ProductDao {
    private static List<ProductModel> list = new ArrayList<>();

    public int add(ProductModel model) {
        int size = list.size();
        ProductModel mm = null;
        int id = 0;
        if (size > 0) {
            mm = list.get(size - 1);
            id = mm.getId();
        }
//        list的索引从0开始，list.get(size);拿到的是错误的
        model.setId(id + 1);
        list.add(model);
        return 1;
    }

    public List<ProductModel> findAll(ProductModel model) {
        return list;
    }

    public int del(ProductModel productModel) {
//        for (int i = 0; i < list.size(); i++) {
//            if (productModel.getId().equals(list.get(i).getId())) {
//                list.remove(i);
//            }
//        }
        Iterator<ProductModel> iterator = list.iterator();
        while (iterator.hasNext()) {
            if (productModel.getId().equals(iterator.next().getId())) {
                iterator.remove();
            }
        }
        return 1;
    }

    public ProductModel findById(ProductModel productModel) {
        for (int i = 0; i < list.size(); i++) {
            if (productModel.getId().equals(list.get(i).getId())) {
                return list.get(i);
            }
        }
        return null;
    }

    public int update(ProductModel productModel) {
        for (int i = 0; i < list.size(); i++) {
            if (productModel.getId().equals(list.get(i).getId())) {
                list.set(i, productModel);
            }
        }
        return 1;
    }
}
